<?php

namespace app\admin\controller;

use think\Controller;
use think\Request;
use think\Db;
class Course extends Controller
{
    //展示页面
    public  function index()
    {
       $data = Db::name('course')
                  ->select();
        return View('',[
            'data'=>$data]);

    }
    //执行新增
    public function add()
    {
        return view();
    }
    //上传新增数据到数据库
    public function save(Request $request)
    {
       $p = $request->post();
   
       $data = [
       'coursename' =>$p['coursename'],
        'desc' => $p['desc'],
        'price' => $p['price'],
        'display' => $p['display']
       ];

    //新增之前的判断
       //1.判断输入的每条数据都不能为空
      if($data['coursename'] === ''||$data['desc']===''||$data['price']===''){
        return $this->error('添加的数据不能为空');
      }

      //2.查course表判断输入的课程数据库是否已存在
       $a = Db::field('coursename')
               ->name('course')
               ->select();
        $b=[];
        foreach ($a as $k => $v) {
          $b[]=$v['coursename'];
        }
        if(in_array($data['coursename'],$b)){
          return  $this->error('您添加的课程已经存在,请重新添加');
        }
      //3.输入的价格不能为负数
        if($data['price'] < 0){
          return  $this->error('输入的价格不能为负数');
        }
       

        // var_dump($b);die;
       $res = Db::name('course')
               ->data($data)
               ->insert();
         // var_dump($res);die;      
    if($res > 0){
        return $this ->success('添加成功',url('admin/course/index'));
      }else{
        return $this->error('添加失败,请重试',url('admin/course/add'));
      }

    }

    
    //编辑课程(edit)
    public function edit($id)
    {
        //查数据
        $data = Db::name('course')
                  ->where('id ='.$id)
                  ->find();
       return view('',[
         'data'=>$data
          ]);
    }

    //更新编辑的课程的信息
    public  function update(Request $request,$id)
    {
       
        $p = $request->post();
// var_dump($p);die;
        $data =[
       'coursename' =>$p['coursename'],
        'desc' => $p['desc'],
        'price' => $p['price'],
        'display' => $p['display'],
        ];
         // var_dump($data);die;
        $res = Db::name('course')
                    ->where('id',$id)
                    ->update($data);
         // var_dump($res);die;
        if($res > 0){
           $this->success('编辑成功',url('admin/course/index'));
        }else{
       $this->error('编辑失败,请重试');
    } 
}
     //删除课程
     public function delete($id)
     {

        $res = Db::name('course')
                 ->delete($id);
        // var_dump($res);die;
        if($res >0){
            $this->success('删除成功',url('admin/course/index')); 
        }else{
            $this->error('删除失败,请重新删除');
        }
     }


}
